package cn.bonoon.entities;

/**
 * 即时计划的状态
 * @author jackson
 *
 */
public enum ImmediatePlanStatus {
	/** 未开始的计划 */
	DRAFT {
		@Override
		public boolean editable() {
			return true;
		}

		@Override
		public boolean taskEditable() {
			return false;
		}
	},
	/** 已经开始的计划 */
	STARTED {
		@Override
		public boolean editable() {
			return false;
		}

		@Override
		public boolean taskEditable() {
			return true;
		}
	},
	/** 已经结束的计划 */
	END {
		@Override
		public boolean editable() {
			return false;
		}

		@Override
		public boolean taskEditable() {
			return false;
		}
	},
	/** 已经取消的计划 */
	CANCELED {
		@Override
		public boolean editable() {
			return false;
		}

		@Override
		public boolean taskEditable() {
			return false;
		}
	};
	
	public abstract boolean editable();
	public abstract boolean taskEditable();
}
